package zhongbo.java.air.dictionary.model;


import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import zhongbo.java.air.dictionary.model.enums.ZoneType;

import javax.validation.constraints.NotBlank;
import java.sql.Date;

@ApiModel("警报区域")
@TableName("air_alert_zone")
@Data
public class AlertZone {

    @TableId(type = IdType.ASSIGN_UUID)
    @NotBlank
    private String id;//UUID 主键
    @ApiModelProperty("区域业务编号（如 BJ_NOFLY_001）")
    @NotBlank
    private String zoneCode;
    @ApiModelProperty("区域类型（枚举值：NO_FLY-禁飞区, RESTRICTED-限制区, TEMPORARY-临时区）")
    private ZoneType zoneType;
    @NotBlank
    @ApiModelProperty("多边形顶点坐标（JSON格式：[{\"lat\":39.9,\"lng\":116.3},...]）")
    private String vertices;

    @ApiModelProperty("生效开始时间")
    private Date effectiveStart;
    @ApiModelProperty("生效结束时间（NULL表示永久有效）")
    private Date effectiveEnd;
    @ApiModelProperty("创建时间")
    private Date createTime;
    @ApiModelProperty("更新时间")
    private Date updateTime;}
